package org.jeecg.common.converter;

import java.util.List;

/**
 * @author Zheng Jie
 * @date 2018-11-23
 */
public interface BaseConvert<E, P, V> {

    /**
     * params转Entity
     *
     * @param params /
     * @return /
     */
    E toEntity(P params);

    /**
     * Entity转params
     *
     * @param entity /
     * @return /
     */
    P toParams(E entity);

    /**
     * entity
     *
     * @param entity
     * @return
     */
    V toVO(E entity);

    /**
     * DTO集合转Entity集合
     *
     * @param dtoList /
     * @return /
     */
    List<E> toEntity(List<P> dtoList);

    /**
     * Entity集合转DTO集合
     *
     * @param entityList /
     * @return /
     */
    List<P> toDto(List<E> entityList);

    /**
     * Entity集合转VO集合
     *
     * @param entityList
     * @return
     */
    List<V> toVO(List<E> entityList);
}
